Description
The System page shows aggregate CPU% but no per-core breakdown. Add a per-core bar section to the CPU panel or as a new row between the sparkline and the process table.
Implementation:
psutil.cpu_percent(percpu=True)returns a list of per-core percentages- Add this call to
SystemStats.sample()→"cores_pct": [...] - Render as a grid of labeled bars:
C0 [████░░░░] 42% C1 [██░░░░░░] 18% … - Use Unicode block chars (
█,░) for bars, scaled to a fixed width (e.g. 8 chars) - Color: green < 50%, yellow 50–80%, red > 80%
- Layout: 2 or 4 cores per row depending on terminal width / core count
- Place in the existing
sys-cpupanel below the aggregate line, or as a dedicated row
Acceptance Criteria
- #1 Per-core CPU percentages shown as labeled bars
- #2 Bars are color-coded by utilization level
- #3 Layout adapts to core count (wraps to multiple rows)
- #4 Updates on same SYS_REFRESH_SECS interval as existing system stats
- #5 Fits within sys-cpu panel without requiring scroll on standard terminal widths